<?php
require_once 'db.php';


// 演示锁
// $db->execute('START TRANSACTION');
// var_dump($db->query("SELECT * FROM count WHERE prefix = 'd1' FOR UPDATE"));
//
// sleep(5);
// $db->execute('COMMIT');
// var_dump("执行完毕");

//  $dbh->beginTransaction(); 开启事务
//  $dbh->commit(); 提交
//  $dbh->rollBack(); 回滚

// 幻读
$db->execute('START TRANSACTION');
var_dump('T1-- 第一次 查询数据 === 》》 ');
$data = $db->query("SELECT * FROM count WHERE prefix = 'd1d' FOR UPDATE");
var_dump($data);
// 故意延迟5秒更新
sleep(5);
if (empty($data)) {
    var_dump('T1-- 五秒后新增 === 》》 ');
    var_dump($db->execute("insert into count values('d1d', 881,31)"));
    var_dump('T1-- 查询数据 === 》》');
    var_dump($db->query("SELECT * FROM count WHERE prefix = 'd1d' "));
}
$db->execute('COMMIT');







//
